package Codigo;

import javax.swing.JOptionPane;

import BaseDatos.*;

public class PatronAcceso 
{
	private String usuario;
	private String password;
	
	public PatronAcceso(String usuario,String password)
	{
		this.usuario = usuario;
		this.password = password;
	}

	public String getUsuario() {
		return usuario;
	}

	public String getPassword() {
		return password;
	}
	
	public boolean iniciaSesion()
	{
		boolean exito = false;
		BD baseDatos = new BD();
		baseDatos.listaUsuarios();
		if (baseDatos.existeUsuario(usuario) && baseDatos.estaActivo(usuario))
		{
			String passwordBd = baseDatos.getPassword(usuario);
			if (passwordBd.equals(this.password))
			{
				if (!baseDatos.estaLogueado(usuario))
				{
					exito = baseDatos.iniciaSesion(usuario);
				}
				else
				{
					String DNI = JOptionPane.showInputDialog("Introduce DNI");
					String DNIBd = baseDatos.getDNI(usuario);
					if (DNIBd.equals(DNI))
					{
						exito = baseDatos.cierraSesion(usuario);
					}
					else
					{
						PatronErrores.showMessage(2);
					}					
				}
			}
			else
			{
				PatronErrores.showMessage(1);
			}
		}
		else
		{
			PatronErrores.showMessage(0);
		}
		return exito;
	}
	
	public int establecePermisos()
	{
		BD baseDatos = new BD();
		return baseDatos.getPermisos(this.usuario);
	}
	
	public boolean cierraSesion()
	{
		BD baseDatos = new BD();
		return baseDatos.cierraSesion(this.usuario);		
	}

}
